One or more aspects relate, in general, to pre-silicon testing, and in particular, to evaluating fairness during pre-silicon testing of devices under test.
During the pre-silicon process, devices are tested in a virtual environment with sophisticated simulation, emulation and formal verification tools. In contrast, post-silicon validation tests occur on actual devices running at-speed in commercial, real-world systems. Pre-silicon testing performs various tests to determine functional correctness and/or to assess performance of the devices under test and/or the system that includes such devices.
In assessing performance, one or more criteria are considered, including fairness. Fairness relates, in general, to whether forward progress is being made for traffic (e.g., commands, instructions, and/or other types of traffic) being driven on interfaces of the device under test. Fairness, and in particular, a lack of fairness, is difficult to discover in current simulation test environments, since bus functional models, which drive traffic on the interfaces, are quiesced at pre-determined, fixed cycles. This stops new commands from being driven on the interfaces, allowing outstanding traffic—even if previously not making expected forward progress due to a fairness issue—to finish within the run out period of the testcase.